<title>管理员列表 - {:getSettingOptionsCache('base.web_site_title') ?: '后台管理系统模板'}</title>

<!--表格插件css-->
<link rel="stylesheet" href="{:HTTP_STATIC_ADMIN_CDN_URL}js/bootstrap-table/bootstrap-table.min.css">
<link rel="stylesheet" type="text/css" href="{:HTTP_STATIC_ADMIN_CDN_URL}css/style.min.css">

<div class="container-fluid">
    <div class="row">
        <div class="col-lg-12">
            <div class="card">
                <header class="card-header">
                    <div class="card-title">操作日志</div>
                </header>
                <div class="card-body">
                    <table id="table"></table>
                </div>
            </div>
        </div>
    </div>
</div>

<script type="text/javascript" src="{:HTTP_STATIC_ADMIN_CDN_URL}js/layer/src/layer.js"></script>
<!--加载插件-->
<script type="text/javascript" src="{:HTTP_STATIC_ADMIN_CDN_URL}js/lyear-loading.js"></script>
<!--表格插件js-->
<script src="{:HTTP_STATIC_ADMIN_CDN_URL}js/bootstrap-table/bootstrap-table.js"></script>
<script src="{:HTTP_STATIC_ADMIN_CDN_URL}js/bootstrap-table/locale/bootstrap-table-zh-CN.min.js"></script>

<script>
    let conditionForm = {};
    const requestUrl = "{:url('/admin/adminlog/list')}";
    let objHtml = [
        {
            'title': '封禁IP',
            'a-class': 'disable-btn',
            'icon': 'mdi-monitor-speaker-off',
            'event': (event, value, row, index) => {
                reconfirm({
                    url: "{:url('/admin/adminlog/banIP')}",
                    param: {id: row.id},
                    success: (res) => {
                        res.code === 200 && refreshTable();
                    }
                }, '确定封禁IP ' + row.ip + ' 吗？', '请再次确认是否封禁？');
            },
        },
    ];
    /**
     * 无Form表单时需要使用条件
     * @param {string}      field   字段名
     * @param {string|int}  value   值
     */
    function noneFormCondition(field, value){
        conditionForm = {};
        conditionForm[field] = value;
        refreshTable();
    }

    const columns = [{
        field: 'id',
        title: '编号',
        // 使用[align]，[halign]和[valign]选项来设置列和它们的标题的对齐方式。
        // h表示横向，v标识垂直
        align: 'center',
        switchable: false,
        // 列的宽度
        width: 3,
        // 宽度单位
        widthUnit: 'rem'
    }, {
        field: 'name',
        align: 'center',
        title: '后台用户',
        width: 4,
        // 宽度单位
        widthUnit: 'rem',
        formatter:function(value, row, index, field){
            return '<a href="#" class="link-info" onclick="noneFormCondition(\'aid\', \'' + row.aid + '\')">' + value + '</a>';
        }
    }, {
        field: 'method',
        align: 'center',
        title: '请求方法',
        width: 4,
        // 宽度单位
        widthUnit: 'rem',
    }, {
        field: 'route',
        title: '路由地址',
        width: 12,
        // 宽度单位
        widthUnit: 'rem',
        align: 'center',
    }, {
        field: 'param',
        title: '请求参数',
        width: 40,
        visible: false,
        // 宽度单位
        widthUnit: 'rem',
        align: 'center',
    }, {
        field: 'content',
        title: '操作内容',
        class: 'text-break',
        width: 40,
        // 宽度单位
        widthUnit: 'rem',
        align: 'center',
    }, {
        field: 'ip',
        title: 'IP地址',
        width: 4,
        // 宽度单位
        widthUnit: 'rem',
        align: 'center',
        formatter:function(value, row, index, field){
            return '<a href="#" class="link-info" onclick="noneFormCondition(\'' + field + '\', \'' + value + '\')">' + value + '</a>';
        }
    }, {
        field: 'device',
        title: '设备信息',
        width: 40,
        visible: false,
        // 宽度单位
        widthUnit: 'rem',
        align: 'center',
    }, {
        field: 'addtime',
        title: '创建时间',
        width: 10,
        // 宽度单位
        widthUnit: 'rem',
        align: 'center',
        formatter:function(value, row, index){
            return makeData(value);
        }
    }, {
        field: 'operate',
        title: '操作',
        align: 'center',
        width: 3,
        // 宽度单位
        widthUnit: 'rem',
        formatter: btnGroup(objHtml),  // 自定义方法
        events: btnEvents(objHtml)
    }];

</script>

<script type="text/javascript" src="{:HTTP_STATIC_ADMIN_LOCAL_URL}js/common/table.js"></script>
<script>
    //下拉框更新样式
    $('.exampleSelect').each(function() {
        var $this = $(this);
        $this.lyearSelect({
            width: $this.data('width') ? $this.data('width') : '', // width示例：75px、50%
            placeholder: $this.data('placeholder') ? $this.data('placeholder') : '请选择',
            search: $this.data('search') ? $this.data('search') : false,
        });
    });

    //下拉选择搜索项
    $('.search-bar .dropdown-menu a').click(function() {
        $(this).parents('.search-bar').find('.search-field').val(($(this).data('field') || ''));
        $(this).parents('.search-bar').find('.search-btn').html($(this).text());
    });

</script>
